home *** CD-ROM | disk | FTP | other *** search
/ PC World 2007 November / PCWorld_2007-11_cd.bin / komunikace / plainhtml / ph45_ENU_Setup.exe / {app} / res / xmlDocument.js < prev   
Text File  |  2006-09-07  |  3KB  |  141 lines

  1. /*
  2.     BDS Welcome Page - XML Document Routines
  3.  
  4.     Copyright (c) 2004, 2005 Borland Software Corporation
  5.  
  6.     Written by Daniel Wischnewski, Borland SE Germany.
  7.     Co-Admin of www.delphipraxis.net -- The German Delphi Community
  8.     Email: dwischnewski@gatenetwork.com
  9. */
  10.  
  11. function getItemValue(item, tag)
  12. {
  13.     var valueItem;
  14.     
  15.     if (item != null)
  16.     {
  17.         valueItem = item.selectSingleNode(tag);
  18.         if (valueItem != null)
  19.         {
  20.             return valueItem.text;
  21.         } else {
  22.             return '';
  23.         }
  24.     } else {
  25.         return '';
  26.     }
  27. }
  28.  
  29. function getDateItemValue(item, tag)
  30. {
  31.     var datevalue;
  32.     var utcdate;
  33.  
  34.     datevalue = getItemValue(item, tag);
  35.     if (datevalue != '')
  36.     {
  37.         utcdate = new Date(Date.parse(datevalue));
  38.         return utcdate.toLocaleString();
  39.     }
  40.     return datevalue;
  41. }
  42.  
  43. function getXmlDoc()
  44. {
  45.     var xmlDoc;
  46.     
  47.     xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
  48.     xmlDoc.async = false;
  49.     return xmlDoc;
  50. }
  51.  
  52. function getXmlHttpDoc()
  53. {
  54.     var xmlDoc;
  55.  
  56.     xmlDoc = new ActiveXObject('Msxml2.ServerXMLHTTP.4.0');
  57.     return xmlDoc;
  58. }
  59.  
  60. function loadXmlDoc(fileName)
  61. {
  62.     var xmlDoc;
  63.  
  64.     xmlDoc = getXmlDoc();
  65.     xmlDoc.load(fileName);
  66.     return xmlDoc;
  67. }
  68.  
  69. function loadXmlDocSafe(fileName)
  70. {
  71.     var xmlDoc;
  72.  
  73.     xmlDoc = loadXmlDoc(fileName);
  74.     if (xmlDoc.parseError.errorCode != 0)
  75.     {
  76.         xmlDoc.loadXML('<rss version="2.0" />');
  77.     }
  78.     return xmlDoc;
  79. }
  80.  
  81. function getSubNode(xmlNode, nodeName)
  82. {
  83.     var subNode;
  84.  
  85.     subNode = xmlNode.selectSingleNode(nodeName);
  86.     if (subNode == null)
  87.     {
  88.         subNode = xmlNode.appendChild(xmlNode.ownerDocument.createNode(1, nodeName, ''));
  89.     }
  90.     return subNode;
  91. }
  92.  
  93. function getSubNodeEx(xmlNode, nodeName, attrName, attrValue)
  94. {
  95.     var subNode;
  96.     var attr;
  97.     var XSL;
  98.  
  99.     XSL = nodeName + '[@' + attrName + '="' + attrValue + '"]';
  100.     subNode = xmlNode.selectSingleNode(XSL);
  101.     if (subNode == null)
  102.     {
  103.         subNode = xmlNode.appendChild(xmlNode.ownerDocument.createNode(1, nodeName, ''));
  104.         attr = xmlNode.ownerDocument.createNode(2, attrName, '');
  105.         attr.text = attrValue;
  106.         subNode.attributes.setNamedItem(attr);
  107.     }
  108.     return subNode;
  109. }
  110.  
  111. function setAttrValue(xmlNode, attrName, attrValue)
  112. {
  113.     var attr;
  114.  
  115.     attr = xmlNode.ownerDocument.createNode(2, attrName, '');
  116.     attr.text = attrValue;
  117.     xmlNode.attributes.setNamedItem(attr);
  118. }
  119.  
  120. function getSettingsNode(xmlDoc)
  121. {
  122.     return getSubNode(xmlDoc.documentElement, 'settings');
  123. }
  124.  
  125. function loadLocalXmlDoc(fileName)
  126. {
  127.     var xmlFile;
  128.  
  129.     xmlFile = xmlPath + fileName;
  130.     return loadXmlDoc(xmlFile);
  131. }
  132.  
  133. function loadLocalXslDoc(fileName)
  134. {
  135.     var xslFile;
  136.  
  137.     xslFile = xslPath + fileName;
  138.     return loadXmlDoc(xslFile);
  139. }
  140.  
  141.